<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui"
    template="/layout/template/template.xhtml">

	<h:form id="formulario">
	    <p:panelGrid id="janela" header="Quadro de Kanban" columns="3" columnClasses="columnQuadro, columnQuadro, columnQuadro" style="width: 100%">  
		     
		     <p:panel header="Aberto">  
			  	<h:outputText value="Nenhuma Tarefa em Aberto!" rendered="#{empty quadroService.tarefasAberta}" style="font-size:16px;" />  
		  
		        <p:dataGrid id="tarefasAberta" var="item" rendered="#{not empty quadroService.tarefasAberta}"
		                    value="#{quadroService.tarefasAberta}" columns="2" style="width: 100%">  
		            <p:column rendered="#{item.sprint.usuarios.contains(identity.usuarioLogado)}">  
		                <p:panel id="pnl" header="#{item.titulo}"  styleClass="#{item.cor.css}">  
							#{item.descricao}
		                </p:panel>  
		                <p:draggable for="pnl" revert="true" scope="aberto" rendered="#{identity.usuarioLogado.cargo eq 'DESENVOLVE'}"
		                        handle=".ui-panel-titlebar" stack=".ui-panel"/>  
		            </p:column>  
		            <p:column rendered="#{!item.sprint.usuarios.contains(identity.usuarioLogado)}">  
		                <p:panel id="pnl999" header="#{item.titulo}"  styleClass="postit">  
							#{item.descricao}
		                </p:panel>  
		            </p:column>  
		        </p:dataGrid>  
		    </p:panel>  
		  
		    <p:panel id="tarefasPendente" header="Pendentes">  
		        <p:outputPanel id="dropArea">  
	
				  	<h:outputText value="Nenhuma Tarefa em Andamento!" rendered="#{empty quadroService.tarefasPendente}" style="font-size:16px;" />  
		  
		            <p:dataGrid id="tarefasPendentes" var="item" value="#{quadroService.tarefasPendente}" rendered="#{not empty quadroService.tarefasPendente}"  style="width: 100%">  
		  
		                <p:column rendered="#{identity.usuarioLogado.equals(item.usuario)}">  
		                	<p:panel id="pnl1"  header="#{item.titulo}"  styleClass="#{item.cor.css}" menuTitle="#{item.usuario.nome}">
		                    	#{item.descricao} <br />
		                    	<hr />
		                    	#{item.usuario.nome} 
		                    </p:panel>  
			                <p:draggable for="pnl1" revert="true" scope="pendente" rendered="#{identity.usuarioLogado.cargo eq 'DESENVOLVE'}"
			                        handle=".ui-panel-titlebar" stack=".ui-panel"/>  
		                </p:column>  
						 
		                <p:column rendered="#{!identity.usuarioLogado.equals(item.usuario)}">  
		                	<p:panel id="pnl888"  header="#{item.titulo}"  styleClass="postit" menuTitle="#{item.usuario.nome}">
		                    	#{item.descricao} <br />
		                    	<hr />
		                    	#{item.usuario.nome} 
		                    </p:panel>  
		                </p:column>  
						 
		            </p:dataGrid>  
		            
		        </p:outputPanel>  
		    </p:panel>  
		  
		    <p:panel id="tarefasConferencia" header="Conferencia">  
		        <p:outputPanel id="dropConferencia">  
	
				  	<h:outputText value="Nenhuma Tarefa em Conferencia!" rendered="#{empty quadroService.tarefasConferencia}" style="font-size:16px;" />  
		  
		            <p:dataGrid id="tarefasConferencias" var="item" value="#{quadroService.tarefasConferencia}" rendered="#{not empty quadroService.tarefasConferencia}" columns="2" style="width: 100%">  
		  
		                <p:column>  
		                	<p:panel id="pnl1" styleClass="#{item.cor.css}">
		                    	<f:facet name="header">
		                    		#{item.titulo}   
						            <p:commandLink styleClass="ui-panel-titlebar-icon ui-corner-all ui-state-default" action="#{quadroMB.delegar(item)}" 
						            	update=":growl, :formulario:janela, :formulario:drop" title="Delegar" rendered="#{identity.usuarioLogado.cargo eq 'TESTER' and item.usuario == null}">  
						                <h:outputText styleClass="ui-icon ui-icon-check" />  
						            </p:commandLink>  
						            <p:commandLink styleClass="ui-panel-titlebar-icon ui-corner-all ui-state-default" action="#{quadroMB.finalizar(item)}" 
						            	update=":growl, :formulario:janela, :formulario:drop" title="finalizar" rendered="#{identity.usuarioLogado eq item.usuario}">  
						                <h:outputText styleClass="ui-icon ui-icon-close" />  
						            </p:commandLink>  
						        </f:facet>  
		                    	<h:outputText value="#{item.descricao}" />
		                    </p:panel>
		                    <p:draggable for="pnl1" revert="true" scope="conferencia" rendered="#{identity.usuarioLogado eq item.usuario}"
			                        handle=".ui-panel-titlebar" stack=".ui-panel"/>  
		                      
		                </p:column>  
						 
		            </p:dataGrid>  
		            
		        </p:outputPanel>  
		    </p:panel>  
		  
		</p:panelGrid>	  
		<p:outputPanel id="drop">
		    <p:droppable for="tarefasPendente" tolerance="pointer" activeStyleClass="ui-state-highlight" datasource="tarefasAberta" onDrop="handleDrop" scope="aberto" rendered="#{identity.usuarioLogado.cargo eq 'DESENVOLVE'}">  
		        <p:ajax listener="#{quadroMB.delegar}" update=":growl, janela, drop" />  
		    </p:droppable> 		
		    <p:droppable for="tarefasConferencia" tolerance="pointer" activeStyleClass="ui-state-highlight" datasource="tarefasPendentes" onDrop="handleDrop" scope="pendente" rendered="#{identity.usuarioLogado.cargo eq 'DESENVOLVE'}">  
		        <p:ajax listener="#{quadroMB.finalizar}" update=":growl, janela, drop" />  
		    </p:droppable> 		
		    <p:droppable for="tarefasPendente" tolerance="pointer" activeStyleClass="ui-state-highlight" datasource="tarefasConferencias" onDrop="handleDrop" scope="conferencia" rendered="#{identity.usuarioLogado.cargo eq 'TESTER'}">  
		        <p:ajax listener="#{quadroMB.reabrir}" update=":growl, janela, drop" />  
		    </p:droppable> 		
		</p:outputPanel>  

		<!--  
		 <p:poll interval="3" update="quadro" />  
		 -->
		
	</h:form>
		
	<script type="text/javascript">
		function handleDrop(event, ui) {
			var droppedCar = ui.draggable;
			droppedCar.fadeOut('fast');
		}
	</script> 
</ui:composition>
